home *** CD-ROM | disk | FTP | other *** search
/ NOVA - For the NeXT Workstation / NOVA - For the NeXT Workstation.iso / Documents / NeXTAnswers / ib.814 < prev    next >
Text File  |  1992-02-06  |  3KB  |  81 lines

  1. {\rtf0\ansi{\fonttbl\f0\fnil Times-Roman;\f2\fmodern Courier;\f1\fswiss Helvetica;}
  2. \paperw12940
  3. \paperh9000
  4. \margl120
  5. \margr1000
  6. {\colortbl\red0\green0\blue0;}
  7. \pard\tx1140\tx2300\tx3440\tx4600\tx5760\tx6900\tx8060\tx9200\tx10360\tx11520\f0\b0\i0\ul0\fs28\fc0 InterfaceBuilder custom palette makefile bug workaround
  8. \pard\tx960\tx1920\tx2880\tx3840\tx4800\tx5760\tx6720\tx7680\tx8640\tx9600 \
  9. \
  10. Q:  When I use 
  11. \b make clean
  12. \b0  to remove my executable files, I notice that the
  13. \b  .debug
  14. \b0  version of my palette files are not removed. What can I do?\
  15. \
  16. A:  This is a known bug in the 
  17. \b /usr/lib/nib/palette.make
  18. \b0 . You can workaround this problem by creating a 
  19. \b Makefile.postamble 
  20. \b0 with  the following lines: \
  21. \
  22.  
  23. \pard\tx1140\tx2300\tx3440\tx4600\tx5760\tx6900\tx8060\tx9200\tx10360\tx11520\f2\fs24\fc0 # Extend 'make clean' to remove the .debug directories\
  24. #\
  25. clean::\
  26.     /bin/rm -rf $(NAME).debug debug_obj\
  27.         
  28. \pard\tx960\tx1920\tx2880\tx3840\tx4800\tx5760\tx6720\tx7680\tx8640\tx9600 \
  29.  
  30. \f0\fs28 \
  31. Q:  I have added a custom library using the InterfaceBuilder Tools Inspector and the 
  32. \b OTHER_LIBS
  33. \b0  option into my palette IB project directory.  I was able to compile successfully using
  34. \b  make debug
  35. \b0 , but when I loaded  my
  36. \b  .debug.palette
  37. \b0  file, an alert panel opened with the error "Palette conflicts with previously loaded palettes."  What is happening?\
  38. \
  39. A:  This is another  known bug in the 
  40. \b /usr/lib/nib/palette.make
  41. \b0 . You can workaround this problem by adding the following to  either your 
  42. \b Makefile.postamble 
  43. \b0 or
  44. \b  Makefile.preamble: 
  45. \b0   \
  46. \
  47.  
  48. \pard\tx1140\tx2300\tx3440\tx4600\tx5760\tx6900\tx8060\tx9200\tx10360\tx11520\f2\fs24\fc0 OTHER_DEBUG_LIBS = $(OTHER_LIBS)\
  49. DEBUG_LIBS = $(LIBS)\
  50. \
  51.  
  52. \pard\tx960\tx1920\tx2880\tx3840\tx4800\tx5760\tx6720\tx7680\tx8640\tx9600\f0\fs28 Note that this problem does not happen when you simply use 
  53. \b make
  54. \b0 .\
  55. \
  56. Q: How can I determine exactly what is going wrong when InterfaceBuilder tells me a palette I am trying to load conflicts with a previously loaded palette?\
  57. \
  58. A: You should check the file 
  59. \b /tmp/IBLoadErrors
  60. \b0  for more details.  In our previous example of a missing library, the error file would contain the following output:\
  61. \
  62.  
  63. \pard\tx1440\tx1920\tx2880\tx3840\tx4800\tx5760\tx6720\tx7680\tx8640\tx9600\f2\fs24\li920 localhost>
  64. \b  
  65. \b0 cat /tmp/IBLoadErrors\
  66.  
  67. \fc0 ld(): Undefined symbols:\
  68. _dummyLibFunction\
  69. \
  70.  
  71. \pard\tx960\tx1920\tx2880\tx3840\tx4800\tx5760\tx6720\tx7680\tx8640\tx9600\f0\fs28 which points to the fact that your library was not linked in properly.\
  72. \
  73. \
  74.  
  75. \fc0 QA814\
  76. \
  77. Not Valid for 1.0\
  78. Valid for 2.0\
  79. \
  80.  
  81.